import request from '@/config/axios'
import { BaseInfoVO } from '@/api/recruit/reviewApply/types'

// 招生资格审查评审批次 VO
export interface QualificationReviewBatchVO {
  batchId: string // 批次ID
  batchName: string // 批次名称
  year: string // 年度
  reviewStartTime: Date // 评审开始时间
  reviewEndTime: Date // 评审结束时间
  applyCount: number // 申请人数
  voteCount: number // 投票人数
  waitVoteCount: number // 待投票人数
}

// 招生资格审查评审现场 VO
export interface QualificationReviewSceneVO {
  detailId: string // 详情ID
  batchId: string // 批次ID
  nickName: string // 姓名
  dsgh: string // 工号
  deptName: string // 研究部
  gender: string // 性别
  birthday: string // 出生日期
  baseInformation: string // 基本信息json
  totalFunds: number // 个人经费合计(万元)
  totalStudents: number // 主导师在读学生数
  isVote: number // 是否投票 0-未投票 1-同意 2-不同意
}

// 招生资格审查评审现场VO 转 表格数据
export type QualificationReviewSceneTableVO = QualificationReviewSceneVO & BaseInfoVO

// 招生资格审查投票DTO
export interface reviewVoteDTO {
  batchId: string // 批次ID
  detailId: string // 详情ID
  vote: boolean // 是否投票 true-同意 false-不同意
}

// 招生资格审查评委 API
export const qualificationReviewApi = {
  // 评委查询招生资格审查批次分页
  getReviewBatchPage: async (params: any) => {
    return await request.get({ url: `/recruit/review-batch/judge-list`, params })
  },

  // 招生资格审查评审现场-查询报名投票列表
  getReviewBatchVoteList: async (params: any) => {
    return await request.get({ url: `/recruit/review-votes/list`, params })
  },

  // 招生资格审查评审现场-投票
  reviewVote: async (params: reviewVoteDTO) => {
    return await request.post({ url: `/recruit/review-votes/vote`, params })
  }
}
